指针和数组
数组可以如下的定义:
char v[10]; // 10个字符的数组
指针的定义与此类似
char* p; // 指向字符的指针
在声明里,[ ]
表示“的数组”,而 *
表示“的指针”。所有数组都以0作为它们的下界。因此v有10个元素,v[0]...v[9]。指针可以保有适当类型的对象的地址:
p = &v[3]; // p指向v的第4个元素
一元的 &
是取地址运算符。
考虑将10个元素从一个数组复制到另一个数组:
void anther_function()
{
int v1[10];
int v2[10];
// ...
for(int i = 0; i < 10; i+) v1[i] = v2[i];
}
这里的 for
语句可以读作“将i设置为0,当i小于10时,做第i个元素的赋值并增大i的值”。在应用到整型变量上时,增量运算符 ++
简单地将变量的值加1。
🔚